package ar.com.algotres.tpdos.model.aterrizable;

import ar.com.algotres.tpdos.model.fisica.AreaAterrizaje;
import ar.com.algotres.tpdos.model.fisica.Posicion;

public class PistaLarga extends Pista {

	private static final Boolean ADMITE_AVIONES = true;
	private static final Double PESO_MAX_ADMITIDO = 4000.0;
	private static final Integer LARGO = 260;
	private static final Integer ANCHO = 30;

	public PistaLarga(Posicion extremoSupIzq, DisposicionPista disposicion) {
		super(extremoSupIzq, caracteristicas(disposicion), disposicion);
		AreaAterrizaje areaAterrizaje = new AreaAterrizaje(new Posicion(extremoSupIzq.getXDouble(), extremoSupIzq.getYDouble()), ANCHO, ANCHO);
		getAreasAterrizaje().add(areaAterrizaje);
	}

	private static CaracteristicasPista caracteristicas(DisposicionPista disposicion) {
		if (DisposicionPista.HORIZONTAL.equals(disposicion)){
			return new CaracteristicasPista(ADMITE_AVIONES, PESO_MAX_ADMITIDO, LARGO, ANCHO);
		} else {
			return new CaracteristicasPista(ADMITE_AVIONES, PESO_MAX_ADMITIDO, ANCHO, LARGO);
		}
	}

}
